命令 SELECT DISTINCT は、個別の (異なる) 値のみを返すために使用されます。
テーブル内の列には、多くの繰り返し値が含まれることがよくあります。場合によっては、個別の (異なる) 値をリストする必要があるだけです。
SELECT DISTINCT column1, column2, ...
FROM table_name
以下は、「Northwind」データベースの「Customers」テーブルのサンプルです。
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
次の SQL ステートメントは、「Customers」テーブルの「country」(「国」) 列からすべての値 (重複を含む) を選択します。
Run SQLSELECT Country FROM Customers
次に、SELECT DISTINCT 命令を使用して結果を見てみましょう。
次の SQL ステートメントは、「Customers」テーブルの「country」(「国」) 列から個別の値のみを選択します。
Run SQLSELECT DISTINCT Country FROM Customers
次の SQL ステートメントは、さまざまな (一意の) 顧客の国の数を表示します。
Run SQLSELECT COUNT(DISTINCT Country) FROM Customers